import PoolAble from "../interface/PoolAble";
import KeyAble from "../interface/KeyAble";
import TSPoolManager from "../pool/TSPoolManager";

export default abstract class BaseObject implements PoolAble,KeyAble{
    private key:string = 'BaseObject';

 

    setKey(k:string){
        this.key = k;
    }

    getKey():string{
        return this.key;
    }

    canKill():boolean{
        return true;
    }

    kill():void{
        TSPoolManager.instance().put(this)
    }

    isVisible():boolean{
        return true
    }
}

